package smoker.server;

import java.net.Socket;
import java.util.*;

import smoker.tools.*;

public interface IServerCenter {

	public void sendLoginUser(ConnectClientThread client, Message message, int clientId);
	
	public void addNewClientToMaps(Socket socket, ConnectClientThread clientThread, int key);
	
	public void addOnLineUserToList(User user);
	
	public void offLineInfromAboutAllClient(User user);

	public void onLineInfromAboutAllClient(User user);

	public void chatWith(ChatInfo chatMsg);

	public void addOnLineUserToTable(String[] userInfo);

	public void delUserDataFromTable(User delUser);

	public void logLoginMsg(Message msg);

	public User login(User user);

	public Vector<User> getOnLineUserList();
	
	public int getServerPort();
	
	public Vector<Department> getDepartments();
	
	public int addUser(User addUser);
	
	public int updateUser(User editUser);
	
	public int delUser(String loginID);
	
	public void closeAllClient();
	
	public void refAllOnLineUser();
	
	public String getHostAddress();
	
	public String getHostName();
	
	public void setServerPort(String port);
	
	public void coerceOffLine(User user);

	public int upDateCompany(Company companyInfo);

	public int upDateDpt(Department editDptInfo);

	public int addDpt(Department addDptInfo);

	public int delDpt(String dptName);

	public Company getCompayInfo();
	
	public User seeUserData(int userId);
	
	public User queryUser(String loginId);
	
	public void removeAllClient();

}
